Machine-readable optical codes have been in use for many years. The ubiquitous one-dimensional barcode is used for product tracking and to automate purchases. For example, one-dimensional barcodes are in widespread use for managing point-of-sale purchase transactions using computer-controlled laser scanners.
More recently, two-dimensional codes, also known as matrix barcodes, such as QR (“Quick Response”) codes, have become popular. Two-dimensional codes can encode a much greater quantity of information than one-dimensional codes. The information encoded in such codes is readily accessed through digital photographs of the codes that are processed by application software found in computers and mobile communication devices such as cell phones having digital signal processing and internet communication access. QR codes are frequently employed in conjunction with product advertising to provide an internet URI website link with information about the product advertised.
Optical bar codes are typically intended to be visually observable by humans, so that humans can find the codes and take appropriate action to access encoded information or otherwise use the codes. In contrast, steganographic information is designed to be hidden within an image. The present invention addresses optical codes that are intended to be observable to humans and does not address steganographic codes. Referring to FIG. 3, a matrix barcode 2 of the prior art is illustrated with dark elements 3 and light elements 4 forming black modules on a white background. As used herein, the term matrix barcode is used synonymously with two-dimensional optical code. A QR code is an example of a matrix barcode. Such codes are machine-readable and are input by a machine (such as a scanner or digital imager), analyzed with image processing equipment and software, and the information encoded in the code decoded, extracted, and used.
The formation, printing, scanning, and decoding of one- and two-dimensional bar codes is known in the art. For example, U.S. Pat. No. 7,273,175 describes a method, apparatus and a storage medium for locating QR codes. An image processing apparatus including an optical reader and image processing hardware is discussed in U.S. Pat. No. 7,835,037. U.S. Pat. No. 7,841,531 discloses a camera operating system and matrix decoding device. U.S. Patent Application Publication 20090078772 describes techniques for decoding images of barcodes. U.S. Pat. No. 6,229,964 addresses an icon reader that reads picture identification data from a data icon on an image print. U.S. Pat. No. 7,123,782 describes using a code printed in association with a printed image to identify an electronic repository for a digital version of the printed image.
Codes on an image print can include a reference to remotely-stored information. A code reader can scan the code, decode the reference, and retrieve the information. For example, U.S. Pat. No. 6,199,048 describes a system and method for using identification codes found on ordinary articles of commerce to access remote computers on a network. In accordance with one embodiment of the invention, a computer is provided having a database that relates Uniform Product Code (“UPC”) numbers to Internet network addresses (or “URLs”). To access an Internet resource relating to a particular product, a user enters the product's UPC symbol manually, by swiping a bar code reader over the UPC symbol, or via other suitable input means. The database retrieves the URL corresponding to the UPC code. This location information is then used to access the desired resource.
U.S. Patent Application Publication 20040096123A1 discloses a method and system for locating and accessing digitally stored images including a hard copy print, method and system for producing the hard copy print. The hard copy print has a print side and a back side. The print side has information thereon which identifies the electronic location at which a digital record of the image is accessed electronically. This information is preferably written in a machine readable form so as to permit automatic accessing of the digitally stored images. The system includes a digital storage device for storing of a digital record file of the image on the hard copy print.
Digital images are commonly used to record scenes. It is often the case that information related to the digital image or derived from the digital image, known as image metadata, is used to enhance image presentation or use. The metadata is stored in image databases or as separate files in storage systems. Image metadata can also be directly associated with an image by storing the image metadata in a common file with the image, for example in a file header, wrapper, or other file structure. Referring to FIG. 2, a digital image file 5 includes an information portion 6 and an image portion 7. Binary characters are represented by a descriptive alphabetic description rather than actual data. FIG. 2 uses delimiters such as the open curved bracket character ‘{’, the close curve bracket character ‘}’ and the colon and semicolon characters. Such delimiters are arbitrarily chosen to illustrate a file structure. Many such structures suitable for storage are known in the art or are devised by those skilled in the art, for example extended markup language (XML) files. As long as images are stored in a digital representation, for example as files in an electronic storage system, metadata associated with images is readily saved, retrieved, and used with, or as part of, the files. U.S. Pat. No. 7,848,578 describes capturing visually encoded data along with one or more visual elements, decoding the visually encoded data, and displaying a composite view incorporating both the decoded data and the visual element(s).
However, image metadata is very tedious and difficult to store with printed images. Although the metadata itself can be stored separately from a printed image in an electronic storage system, the association between the printed image and the image metadata can be lost. Alternatively, image metadata is printed with an image on a substrate medium such as paper, for example as text, but retrieving and interpreting the printed information can be difficult. There is a need, therefore, for an alternative structure and method for associating image metadata with an image that has greater utility over a wider variety of media.